package com.paperless.sdk

import com.mogujie.tt.protobuf.InterfaceMacro
import com.mogujie.tt.protobuf.InterfaceMacro.Pb_Error
import com.mogujie.tt.protobuf.InterfaceMacro.Pb_Method
import com.mogujie.tt.protobuf.InterfaceMacro.Pb_Type

/**
 * @author Created by xlk on 2022/1/11.
 */
object ErrorRet {
    @JvmStatic
    fun getTypeMessage(type: Int): String {
        return when (type) {
            Pb_Type.Pb_TYPE_MEET_INTERFACE_INITENV_VALUE -> "初始化环境"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_TIME_VALUE -> "平台时间 -- 高频回调"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_READY_VALUE -> "平台初始化完毕"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_DOWNLOAD_VALUE -> "平台下载 -- 高频回调"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_UPLOAD_VALUE -> "平台上传 -- 高频回调"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEDIAPLAYPOSINFO_VALUE -> "平台播放进度通知 -- 高频回调"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_DEVICEINFO_VALUE -> "设备"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_DEFAULTURL_VALUE -> "会议网页"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_ADMIN_VALUE -> "管理员"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_DEVICECONTROL_VALUE -> "设备控制"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_PEOPLE_VALUE -> "常用人员信息"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEMBER_VALUE -> "参会人员信息"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEMBERGROUP_VALUE -> "参会人员分组"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEMBERGROUPITEM_VALUE -> "参会人员分组人员"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_DEVICEFACESHOW_VALUE -> "设备会议信息"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_ROOM_VALUE -> "会场"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_ROOMDEVICE_VALUE -> "会场设备"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_FILEPUSH_VALUE -> "文件推送"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_REQUESTSTREAMPUSH_VALUE -> "流请求推送"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_STREAMPUSH_VALUE -> "流推送"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETINFO_VALUE -> "会议信息"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETAGENDA_VALUE -> "会议议程"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETBULLET_VALUE -> "会议公告"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETDIRECTORY_VALUE -> "会议目录"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETDIRECTORYFILE_VALUE -> "会议目录文件"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETDIRECTORYRIGHT_VALUE -> "会议目录权限"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETVIDEO_VALUE -> "会议视频"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETTABLECARD_VALUE -> "会议双屏显示"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETSEAT_VALUE -> "会议排位"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETIM_VALUE -> "会议交流"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETONVOTING_VALUE -> "会议发起投票"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETVOTEINFO_VALUE -> "会议投票信息"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETVOTESIGNED_VALUE -> "会议投票人信息"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MANAGEROOM_VALUE -> "会议管理会场"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETSIGN_VALUE -> "会议签到"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_WHITEBOARD_VALUE -> "会议白板"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_FUNCONFIG_VALUE -> "会议功能配置"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEMBERPERMISSION_VALUE -> "参会人员权限信息"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_PEOPLEGROUP_VALUE -> "常用人员分组"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_PEOPLEGROUPITEM_VALUE -> "常用人员分组人员"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_SCREENMOUSECONTROL_VALUE -> "屏幕鼠标控制"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_SCREENKEYBOARDCONTROL_VALUE -> "屏幕键盘控制"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_DEVICEMEETSTATUS_VALUE -> "设备当前会议的一些信息"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_DEVICEOPER_VALUE -> "设备交互信息"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_DBSERVERERROR_VALUE -> "数据库后台回复错误信息"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEDIAPLAY_VALUE -> "媒体播放"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_STREAMPLAY_VALUE -> "流播放"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_STOPPLAY_VALUE -> "流播放"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEMBERCOLOR_VALUE -> "参会人员白板颜色"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETCONTEXT_VALUE -> "上下文"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETCLEAR_VALUE -> "缓存清理,清空所有缓存,其它类型也支持单独"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETSTATISTIC_VALUE -> "会议统计"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETFACECONFIG_VALUE -> "界面配置"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETSENDMAIL_VALUE -> "邮件发送"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_FILESCORE_VALUE -> "会议文件评分相关"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_FILEEVALUATE_VALUE -> "会议文件评价相关"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETEVALUATE_VALUE -> "会议评价相关"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_SYSTEMLOG_VALUE -> "管理员操作日志相关"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_DEVICEVALIDATE_VALUE -> "设备ID校验"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_SYSTEMFUNCTIONLIMIT_VALUE -> "平台功能限制"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_PUBLICINFO_VALUE -> "全局字串"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_FILESCOREVOTE_VALUE -> "自定义文件评分投票"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_PDFWHITEBOARD_VALUE -> "PDF文件多人同时书写"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_FILESCOREVOTESIGN_VALUE -> "自定义文件评分投票记名信息"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_ZKIDENTIFY_VALUE -> "中控生物认证"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_SMSSERVICE_VALUE -> " 短信服务"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_UPDATE_VALUE -> " 升级软件"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_TOPIC_VALUE -> "会议议题"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_TOPICGROUP_VALUE -> " 会议议题参加单位"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_TOPICPERMINSSION_VALUE -> " 会议议题权限"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETTASK_VALUE -> " 会议发布任务"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_MEETUSERDEF_VALUE -> " 会议自定义数据"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_EXITENV_VALUE -> "退出释放资源"
            Pb_Type.Pb_TYPE_MEET_INTERFACE_WEBSESSIONID_VALUE -> "网页登陆验证"
            else -> ""
        }
    }

    @JvmStatic
    fun getMethodMessage(method: Int): String {
        return when (method) {
            Pb_Method.Pb_METHOD_MEET_INTERFACE_ZERO_VALUE -> ""
            Pb_Method.Pb_METHOD_MEET_INTERFACE_QUERY_VALUE -> "查询"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_ADD_VALUE -> "添加"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_MODIFY_VALUE -> "修改"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_DEL_VALUE -> "删除"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_SET_VALUE -> "设置"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_GETSIZE_VALUE -> "获取大小"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_NOTIFY_VALUE -> "变更"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_CLEAR_VALUE -> "清除"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_LOGON_VALUE -> "登录"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_PUSH_VALUE -> "推送"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_ASK_VALUE -> "Ask 申请"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_REJECT_VALUE -> "拒绝"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_EXIT_VALUE -> "退出"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_OPEN_VALUE -> "打开"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_CLOSE_VALUE -> "关闭"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_ENTER_VALUE -> "操作"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_PAGEQUERY_VALUE -> "分页查询"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_MODIFYNAME_VALUE -> "修改名称"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_MODIFYINFO_VALUE -> "修改信息"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_MODIFYSTATUS_VALUE -> "修改状态"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_SINGLEQUERYBYID_VALUE -> "按ID查询"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_SINGLEQUERYBYNAME_VALUE -> "按名称查询"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_CONTROL_VALUE -> "控制"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_SAVE_VALUE -> "保存"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_REFRESH_VALUE -> "刷新"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_COMPLEXQUERY_VALUE -> "复合查询"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_COMPLEXPAGEQUERY_VALUE -> "复合按页查询"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_START_VALUE -> "开始"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_STOP_VALUE -> "结束"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_PLAY_VALUE -> "播放"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_PAUSE_VALUE -> "暂停"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_MOVE_VALUE -> "移动"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_ZOOM_VALUE -> "缩放"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_BACK_VALUE -> "返回或撤销"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_REQUEST_VALUE -> "要求"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_BROADCAST_VALUE -> "广播"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_QUERYPROPERTY_VALUE -> "查询属性"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_SETPROPERTY_VALUE -> "设置属性"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_DUMP_VALUE -> "复制"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_REQUESTPUSH_VALUE -> "询问推送"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_DELALL_VALUE -> "删除全部"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_SEND_VALUE -> "发送"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_DETAILINFO_VALUE -> "详细信息"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_INIT_VALUE -> "Init 初始"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_DESTORY_VALUE -> "Destory"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_MAKEVIDEO_VALUE -> "流通道信息"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_SUBMIT_VALUE -> "提交"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_PUBLIST_VALUE -> "PubList 发布"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_CACHE_VALUE -> "缓存"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_CHILDRED_VALUE -> "子级数据"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_ALLCHILDRED_VALUE -> "所有子级数据"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_RESPONSE_VALUE -> "回复"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_REQUESTTOMANAGE_VALUE -> "请求管理员"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_RESPONSETOMANAGE_VALUE -> "回复请求管理员"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_REQUESTPRIVELIGE_VALUE -> "请求参会人员权限"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_RESPONSEPRIVELIGE_VALUE -> "回复请求参会人员权限"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_UPDATE_VALUE -> "更新、升级"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_TEXTMSG_VALUE -> "文本消息"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_REBOOT_VALUE -> "重启"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_RESINFO_VALUE -> "播放资源信息"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_LOCATE_VALUE -> "定位"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_REQUESTINVITE_VALUE -> "执行邀请"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_RESPONSEINVITE_VALUE -> "回复邀请"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_EXITCHAT_VALUE -> "退出对讲"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_REMOTESET_VALUE -> "远程配置"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_ADDINK_VALUE -> "添加INK"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_ADDRECT_VALUE -> "添加矩形、直线、圆形"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_ADDTEXT_VALUE -> "添加文本"
            Pb_Method.Pb_METHOD_MEET_INTERFACE_ADDPICTURE_VALUE -> "添加图片"
            else -> ""
        }
    }

    @JvmStatic
    fun getRetMessage(ret: Int): String {
        return when (ret) {
            Pb_Error.Pb_ERROR_MEET_INTERFACE_NULL_VALUE -> "操作成功，或者数据为空，视操作请求定"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_NOTINIT_VALUE -> "未初始化"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_MEMORY_VALUE -> "内存分配失败"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_NOSPPORTTYPE_VALUE -> "不支持的请求"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_NOSPPORTMETHOD_VALUE -> "不支持的请求方法"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_DOWNLOAD_VALUE -> "下载失败"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_NETSEND_VALUE -> "发送失败"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_NOREADY_VALUE -> "数据未准备好,可能正在等待数据返回"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_NOFIND_VALUE -> "找不到"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_NOSPPORTPROPERTY_VALUE -> "不支持的属性"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_UPPONMAXVALUE_VALUE -> "超过最大值"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_ZERO_VALUE -> "个数为0"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_PARAMETER_VALUE -> "参数错误"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_DATA_VALUE -> "数据错误"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_UNAUTHORIZED_VALUE -> "功能未授权使用"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_NOCONNECT_VALUE -> "短信服务器未响应"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_SOCKET_VALUE -> "SOCKET创建失败"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_NAMEORPWD_VALUE -> "用户名或密码错误"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_SERVERERR_VALUE -> "访问服务异常"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_NOSMSCNT_VALUE -> "余额不足"
            Pb_Error.Pb_ERROR_MEET_INTERFACE_OPENFILEERROR_VALUE -> "文件打开失败"
            else -> ""
        }
    }

    fun getDBStatusMessage(status: Int): String {
        return when (status) {
            InterfaceMacro.Pb_DB_StatusCode.Pb_STATUS_MULTIRECORD_VALUE -> "多条查询记录"
            InterfaceMacro.Pb_DB_StatusCode.Pb_STATUS_SINGLERECORDD_VALUE -> "单条查询记录"
            InterfaceMacro.Pb_DB_StatusCode.Pb_STATUS_NORECORED_VALUE -> "无返回记录"
            InterfaceMacro.Pb_DB_StatusCode.Pb_STATUS_DONE_VALUE -> "操作成功"
            InterfaceMacro.Pb_DB_StatusCode.Pb_STATUS_FAIL_VALUE -> "请求失败"
            InterfaceMacro.Pb_DB_StatusCode.Pb_STATUS_EXCPT_DB_VALUE -> "数据库异常"
            InterfaceMacro.Pb_DB_StatusCode.Pb_STATUS_EXCPT_SV_VALUE -> "服务器异常"
            InterfaceMacro.Pb_DB_StatusCode.Pb_STATUS_ACCESSDENIED_VALUE -> "权限限制"
            InterfaceMacro.Pb_DB_StatusCode.Pb_STATUS_PSWFAILED_VALUE -> "密码错误"
            InterfaceMacro.Pb_DB_StatusCode.Pb_STATUS_COLL_MEETING_VALUE -> "创建会议有冲突"
            InterfaceMacro.Pb_DB_StatusCode.Pb_STATUS_PARAMETERZERO_VALUE -> "参数错误,不应该为0"
            InterfaceMacro.Pb_DB_StatusCode.Pb_STATUS_NOTEXIST_VALUE -> "不存在的数据"
            InterfaceMacro.Pb_DB_StatusCode.Pb_STATUS_PROTOLDISMATCH_VALUE -> "协议版本不区配"
            else -> ""
        }
    }
}